<?php if(!defined('PUBLIC_DIR')) die('No Access!');

Cnamespace('System');
interface iFile {
	public function __construct($file);

	public function Refresh();
	public function ChangeFile($file);

	public function GetPath();
	public function GetBasename();
	public function GetFilename();
	public function GetExtension();
	public function GetDir();
	public function GetDirname();
	public function GetDirpath();

	public function GetSize();
	public function GetDate($type = 'Create');
	public function GetMode();
	public function GetOwner();
	public function GetGroup();

	public function Open();
	public function Read($Position = 0);
	public function ReadLine($Line = 0);
	public function ReadLines();
	public function Write($Content);
	public function WriteLine($Line);
	public function WriteLines(array $Content);
	public function Append($Content, $Position = -1);
	public function AppendLine($Line, $Position = -1);
	public function AppendLines(array $Lines);
	public function Save();
	public function Clear();
	public function Close();

	public function IsExits();
	public function IsRedable();
	public function IsWritable();
	public function CheckAccess();	

	public function Create();
	public function Move($oldPath, $newPath);
	public function Rename($oldName, $newName);
	public function Copy($dPath, $sPath = null);
	public function Delete();
}